Multimedia communication and presentation

ABSTRACT

The invention provides a method and system for entry and editing of multimedia objects for communication and presentation, associating multimedia objects with received sequences of keystroke or mouse action abbreviations. When an abbreviation is detected, the abbreviation is replaced with the associated multimedia object. Each multimedia object has editable properties, and each set of multimedia objects can be collected into an ensemble, which itself can have editable properties. One such ensemble property is a “theme,” which presents a variant of each multimedia object consistent with the theme.

CROSS-REFERENCE TO RELATED APPLICATION

This application hereby incorporates by reference and claims benefit ofU.S. application Ser. No. 09/053,098, filed on Apr. 1, 1998, now U.S.Pat. No. 6,684,211.

BACKGROUND OF THE INVENTION

1. Field of the Invention

This invention relates to multimedia communication and presentation.

2. Related Art

In computer systems for communicating and presenting data, it isdesirable to communicate and present data in a multiplicity of media.Such communication is sometimes called “multimedia communication.” Forexample, these media can include text, sound, pictures, animation, andcombinations thereof. One advantage of multimedia communication is thatit can more vividly communicate messages to recipients.

One problem in the known art is that multimedia elements comprisesignificant amounts of data, and are therefore difficult to constructfrom “scratch” (that is, from basic elements) and difficult to enterinto a computer system. This problem is acute for pictures and similargraphical elements, which must generally be “captured” using videoequipment. For example, it would be desirable for users to be able toenter picture data into messages for sending, such as when usingelectronic chat or electronic mail systems. However, known electronicchat systems do not provide this capability, and known electronic mailsystems provide only techniques by which pictures that have already beencaptured using other equipment can be attached to electronic mailmessages and transmitted.

Accordingly, it would be advantageous to provide a system in whichmultimedia elements can easily be entered and modified, especially inreal time. This advantage is achieved in a system in which multimediaelements are associated with keystroke or mouse abbreviations so as tobe easily entered from a keyboard or mouse, and in which properties ofboth individual multimedia elements and an ensemble of multimediaelements can be edited to alter the presentation of those multimediaelements.

SUMMARY OF THE INVENTION

The invention provides a system for entry and modification of multimediaelements for communication and presentation. Abbreviations, eachcomprising a sequence of one or more keystrokes or mouse actions (suchas the typed word “flower”) are associated with individual multimediaelements (such as a picture of a flower), so that a human operator canenter those multimedia elements using a keyboard or mouse. Eachmultimedia element has properties (such as size, complexity, or detail),which can be modified once the multimedia element has been entered (suchas altering the flower from a relatively smaller picture to a relativelylarger picture). The set of individual multimedia elements is collectedinto an ensemble, which can itself have properties that can be modified.One such property of the ensemble is a “theme,” which applies to aplurality of multimedia elements in the ensemble and presents a variantof each multimedia element consistent with the theme (such asrepresenting the flower as a cactus in a “Western” theme, or as a rosein a “Romantic” theme).

In a preferred embodiment, the multimedia editor is included with acommunication system for sending and receiving electronic chat andelectronic mail messages in real time, and for presenting web documentsin a compressed form. Each multimedia element can include text, sound,pictures, animation, program fragments (such as a Java applet, a pointerto a database retrieval engine, or a uniform resource locator, alsoknown as URL), or a combination or compilation thereof. When a senderenters an abbreviation, an associated multimedia element is transmittedas an electronic chat message or constructed for transmission as anelectronic mail message; the choice of associated multimedia element canbe responsive to a receiver's capability, and can be selected at thereceiver dynamically in response to user actions (such as time taken tolook at the multimedia element). The sender can also transmit a theme;multimedia objects are presented to the recipient using the sender'stheme, or can be overridden to use a different theme. If the multimediaobjects associated with the abbreviations are available at the recipientor at a common server, electronic chat messages, electronic mailmessages, and web documents can be compressed and transmitted using onlythe abbreviations.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a block diagram of a system for multimedia communicationand presentation.

FIG. 2 shows a flow diagram of a method for multimedia communication andpresentation.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

In the following description, a preferred embodiment of the invention isdescribed with regard to preferred process steps and data structures.Those skilled in the art would recognize after perusal of thisapplication that embodiments of the invention can be implemented usinggeneral purpose processors or special purpose processors adapted toparticular process steps and data structures described herein, and thatimplementation of the process steps and data structures described hereinwould not require undue experimentation or further invention.

System Elements

FIG. 1 shows a block diagram of a system for multimedia communicationand presentation.

A system 100 includes a plurality of client stations 110, each capableof executing client software 111 such as an electronic chat client or anelectronic mail client, and a server station 120, capable of executingserver software 121 such as an electronic chat server or an electronicmail server. The client stations 110 and the server station 120 arecoupled using a communication network 130.

In a preferred embodiment, the client stations 110 and the serverstation 120 communicate using a known communication protocol, such asPOP (post office protocol) or SMTP (simple mail transfer protocol). Theclient stations 110 and the server station 120 use the knowncommunication protocol for transmitting electronic mail messages, HTTP(hypertext transfer protocol) for transmitting web documents, and otherknown communication protocols for transmitting electronic chat messages.

As used herein, the terms “client” and “server” refer to a relationshipbetween the client station and the server station, not necessarily toparticular physical devices. As used herein, one “client station” or one“server station” can comprise any of the following: (a) a singlephysical device capable of executing software which bears a client orserver relationship to another station; (b) a portion of a physicaldevice, such as a software process or set of software processes capableof executing on one hardware device, which portion of the physicaldevice bears a client or server relationship to another station; or (c)a plurality of physical devices, or portions thereof, capable ofcooperating to form a logical entity which bears a client or serverrelationship to another station. The phrases “client station” and“server station” refer to such logical entities and not necessarily toparticular individual physical devices.

Each client station 110 includes a processor, program and data memory,and mass storage (such as a magnetic or optical disk drive). Each clientstation 110 includes a set of input peripherals 112, including acharacter input element (such as a keyboard) and a graphic input element(a pointing device such as a mouse, pen, or trackball), and a set ofoutput peripherals 113, including a visual display element (such as amonitor or printer) and an audio presentation element (such as a set ofspeakers).

Abbreviations for Multimedia Elements

The mass storage includes a database 114, including a set ofabbreviations 115, a set of multimedia objects 116, and a set ofassociations 117 therebetween.

Each abbreviation 115 includes a selected sequence of keystrokes (suchas typed characters) and/or mouse actions (such as left-button clicks,right-button clicks, and double-clicks). In a preferred embodiment, theabbreviations 115 comprise mnemonic names, such as typed words like“flower” to represent a picture of a flower, “foghorn” to represent asound clip of a foghorn, and the like, but an operator at the clientstation 110 can also define new abbreviations 115, such as the name of afavorite dog to represent a picture of that dog, even though that namecan comprise an arbitrary sequence of characters.

Each multimedia object 116 includes a data element for use withmultimedia presentation, such as a text element, an audio element (suchas a sound clip in AU or WAV form), a graphical element, a pictureelement (such as a picture in GIF or JPEG form), or an animation orvideo element (such as a movie clip in AVI or MPEG form). The multimediaobjects 116 can also include data elements such as databases, programfragments (such as Java applets or ActiveX hooks, CGI (common gatewayinterface) scripts, or a qualified URL), or special document formats(such as a document in Adobe PDF format).

Each association 117 includes a link between an abbreviation 115 and atleast one multimedia object 116, so that the client station 110 candetect the abbreviation 115 and locate the multimedia object 116 inresponse thereto.

When an operator of the client station 110 enters sequences ofkeystrokes and/or mouse actions, the client station 110 examines thedatabase 114 and determines when one of the abbreviations 115 isentered. When the client station 110 detects a particular abbreviation115, the client station 110 notes the particular association 117 coupledto that particular abbreviation 115, and determines the (at least one)particular multimedia object 116 associated with that particularabbreviation 115. The client station 110 thereby replaces thatparticular abbreviation 115 with its associated multimedia object 116.

In the case that there is more than one multimedia object 116 associatedwith that particular abbreviation 115, the client station 110 can selectone of those associated multimedia objects 116 in one of several ways:

-   -   The client station 110 can select one of those associated        multimedia objects 116 at random.    -   The client station 110 can select one of those associated        multimedia objects 116 on a round-robin basis.    -   The client station 110 can present two or more of those        associated multimedia objects 116 to the operator and ask the        operator to select one.

After replacing the abbreviation 115 with its associated multimediaobject 116 in the sequence, the client station 110 transmits an alteredmultimedia sequence (that is, with the replacement having been made) tothe server station 120, such as for transmission to a destination clientstation 110 as an electronic chat message or an electronic mail message.The electronic chat message or electronic mail message thus includes thealtered multimedia sequence, some of which has been replaced and some ofwhich has not been replaced. The server station 120 transmits themultimedia sequence to the destination client station 110 using anelectronic chat protocol or an electronic mail protocol. The destinationclient station 110 receives the multimedia sequence and presents themultimedia elements (along with the unreplaced portions of the sequence)to an operator at the destination client station 110.

In a preferred embodiment, the client station 110 can replace aparticular abbreviation 115 with a multimedia object 116 comprising aparticular program fragment in one of at least two ways:

-   -   The client station 110 can insert that program fragment into the        multimedia sequence, so that the destination client station 110        receives the program fragment for execution.    -   The client station 110 can execute that program fragment        directly, so that the destination client station 110 receives        the multimedia sequence after operation thereupon by the        particular program fragment.

In a preferred embodiment, the multimedia objects 116 can be createdusing multimedia capture and editing software, such as for scanningpictures and editing those pictures, recording sound clips and editingthose sound clips, or for creating and/or editing animation sequences.

In a preferred embodiment, the multimedia objects 116 can be located atthe client station 110, at the server station 120, or at another devicecoupled to the network 130 and accessible by either the client station110 or the server station 120. If located remotely from the clientstation 110, the multimedia objects 116 can be cached at the clientstation 110, in the database 114 or otherwise, for use as describedherein.

The abbreviations 115 and the associations 117 can be created using atext editor (or similar software for entering and editing informationcomprising keystrokes), designating the particular sequences ofkeystrokes and/or mouse actions which comprise the abbreviations 115 andnames of those multimedia objects 116 pointed to by their associations117.

The abbreviations 115 and the associations 117 can also be located atthe client station 110, at the server station 120, or at another devicecoupled to the network 130 and accessible by either the client station110 or the server station 120. If located remotely from the clientstation 110, the multimedia objects 116 can be cached at the clientstation 110, in the database 114 or otherwise, for use as describedherein.

Hierarchy of Multimedia Objects

In a preferred embodiment, at least some abbreviations 115 areassociated with a plurality of multimedia objects 116 arranged in asequence or hierarchy. The hierarchy of multimedia objects 116 includesa set of variants of a core multimedia object 116 (not necessarily aparticular single multimedia object 116), differing with regard to a setof parameters such as size, complexity, or detail.

For example, the typed word “flower” can comprise an abbreviation 115and can be associated with a hierarchy of multimedia objects 116representing flowers, including a stylized graphic of a flower, arelatively small photographic picture of a flower, a relatively largephotographic picture of a flower, an animation of a flower, and anapplet for emulating a flower (including being responsive to localweather reports).

When the operator enters the abbreviation 115, the client station 110can offer the operator an opportunity to select among the hierarchy ofmultimedia objects 116 representing flowers. The client station 110 canalso offer the operator an opportunity to alter the selection, eitherusing a separate set of editing commands for the multimedia object 116,or using one or more abbreviations 115 associated with one or more ofthose editing commands.

For example, when the operator enters a particular multimedia object 116using the typed word “flower”, the client station 110 retainsinformation about the properties of that multimedia object 116,including properties in the hierarchy of those multimedia objects 116associated with that particular abbreviation 115. The client station 110can alter the particular multimedia object 116 so as to select adifferent one of those multimedia objects 116 associated with thatparticular abbreviation 115.

Similarly, the client station 110 can replace the abbreviation 115 withthe entire hierarchy of those multimedia objects 116, including adescription of its set of properties, so that the entire hierarchy ofthose multimedia objects 116 is transmitted to the destination clientstation 110. The destination client station 110 can select one of thosemultimedia objects 116 associated with that particular abbreviation 115for presentation, and can allow the operator of the destination clientstation 110 to alter the particular multimedia object 116 so as toselect a different one of those multimedia objects 116 associated withthat particular abbreviation 115.

In a preferred embodiment, the destination client station 110 can selectone of those multimedia objects 116 associated with that particularabbreviation 115 in the following ways:

-   -   The destination client station 110 can ask the operator of the        destination client station 110 to choose one of those multimedia        objects 116.    -   The destination client station 110 can select one of those        multimedia objects 116 responsive to capabilities of the client        station 110.    -   The destination client station 110 can select one of those        multimedia objects 116 responsive to preferences known for the        operator.    -   The destination client station 110 can select one of those        multimedia objects 116 responsive to actions by the operator,        such as an amount of time the operator uses viewing that        multimedia object 116. For example, the destination client        station 110 can alter the selected multimedia object 116 to        present more detail when the operator uses more time viewing        that multimedia object 116.        Ensemble of Multimedia Objects

In any particular object, the set of individual multimedia objects 116used therein is collected into an ensemble, which can itself haveproperties that can be modified. One such property of the ensemble is a“theme,” which applies to a plurality of multimedia elements in theensemble and presents a variant of each multimedia element consistentwith the theme.

For example, in an ensemble of multimedia objects 116, those multimediaobjects 116 representing flowers could each be represented as a pictureof a cactus when the theme is a “Western” theme, or could each berepresented as a picture of a rose when the theme is a “Romantic” theme.Similarly, in that same ensemble, those multimedia objects 116representing hats could each be represented as a picture of a cowboy hatwhen the theme is a “Western” theme, or could each be represented as apicture of a helmet when the theme is a “Military” theme. Example themescould include an “Ancient” theme, a “Gothic” theme, a “Military” theme,a “Modern” theme, an “MTV” theme, a “Romantic” theme, a “Western” theme,or other themes known in art or literature.

Altering the theme for an ensemble would thus alter the presentation ofeach multimedia object 116 that is linked to the theme for thatensemble. The theme can also be associated with multimedia objects 116that are not specifically entered using abbreviations 115, such as abackground multimedia object 116 for the ensemble.

When the operator enters a particular data object that might include oneor more multimedia objects 116, the client station 110 can offer theoperator an opportunity to select a theme for that object. The clientstation 110 can also offer the operator an opportunity to alter theselection, either using a separate set of editing commands for themultimedia object 116, or using one or more abbreviations 115 associatedwith one or more of those editing commands.

When the operator enters a particular abbreviation 115, the clientstation 110 can select among the hierarchy of multimedia objects 116 tofind one associated with the theme for the ensemble. The client station110 can also offer the operator an opportunity to alter the selection soas to make that multimedia object 116 either more or less consistentwith the theme, either using a separate set of editing commands for themultimedia object 116, or using one or more abbreviations 115 associatedwith one or more of those editing commands.

For example, when the operator enters a particular data object, such asan electronic chat message or an electronic mail message, the clientstation 110 retains information about the properties of that dataobject, including its theme. For each multimedia object 116 in the dataobject, the client station 110 retains information about whether thatmultimedia object 116 uses the global theme for the data object, or hasa specific different theme.

Similarly, if the client station 110 can replace the abbreviation 115with the entire hierarchy of those multimedia objects 116, the clientstation 110 can indicate which theme the abbreviation 115 is to berepresented with. The destination client station 110 can select onetheme for those multimedia objects 116 associated with that particularabbreviation 115 for presentation, and can allow the operator of thedestination client station 110 to alter the theme, and so alter thepresentation of that particular multimedia object 116.

In a preferred embodiment, the destination client station 110 can selectthe theme for each multimedia object 116 in the following ways:

-   -   The destination client station 110 can use the theme indicated        by the sending client station 110.    -   The destination client station can ask the operator of the        destination client station 110 to choose a theme.    -   The destination client station 110 can select a theme responsive        to known preferences of the operator of the destination client        station 110.        Compression of Multimedia Objects

In an aspect of the invention, when the abbreviations 115, multimediaobjects 116, and associations 117 are available both to the sendingclient station 110 and to the destination client station 110, dataobjects including multimedia objects 116 can be compressed whentransmitting those data objects from the sending client station 110 tothe destination client station 110.

In this aspect of the invention, the sending client station 110 examinesa data object in a message (such as an electronic mail message or a webdocument) to be transmitted from the sending client station 110 to thedestination client station 110. When the data object includes aparticular multimedia object 116 for which there is an association 117with a particular abbreviation 115, the sending client station 110replaces that multimedia object 116 in the data object with itsassociated abbreviation 115. The data object is thereby compressed intoa more compact form.

The sending client station 110 transmits the message, including thecompressed data object, to the server station 120, which transmits themessage, including the compressed data object, to the receiving clientstation 110. The receiving client station 110 examines the compresseddata object in the message, replaces each abbreviation 115 with itsassociated multimedia object 116, and presents the message, includingthe original data object, to an operator.

In alternative embodiments, the multimedia objects 116 can be availableat a remote device coupled to the network 130, and the receiving clientstation 110 can cache those multimedia objects 116 or obtain them asneeded.

In alternative embodiments, the abbreviations 115 and the associations117 can be transmitted with the message and the compressed data object.

Behavior Associated with Abbreviations

Each multimedia object 116 can include a program fragment, such as aJava applet, a CGI script for accessing a local database, or a URL foraccessing a remote data object. More generally, each abbreviation 115can be associated with a sequence of behavior, such as performed byexecuting a Java applet as the associated multimedia object 116.

For example, an abbreviation such as the typed word “sales” could beassociated with a multimedia object 116 including a Java applet or CGIscript for accessing a local database, retrieving a value for totalsales, and inserting that value into the data object in which theabbreviation 115 is found.

In a preferred embodiment, a library includes such abbreviations 115,multimedia objects 116 including program fragments, and associations117; and that library is available at the client station 110 or at aremote device coupled to the network 130.

Method of Operation

FIG. 2 shows a flow diagram of a method for multimedia communication andpresentation.

A method 200 includes a set of flow points to be noted, and steps to beexecuted, cooperatively by the system 100, including the sending clientstation 110, the server station 120, and the destination client station110.

At a flow point 210, an operator at a particular client station 110 isready to enter a data object intended to include multimedia objects 116for communication or presentation. The data object can comprise anelectronic chat message, an electronic mail message, a file object, aweb document, or another type of data object known in the disparate artsof computer science.

For example, the data object can comprise an electronic chat messagebeing composed at a keyboard in real time.

At a step 221, the operator at the client station 110 enters a sequenceof keystrokes and mouse actions, such as using a text editor or similarapplication program for entry of text objects.

For example, the operator at the client station 110 can type a sequenceof printable text characters.

At a step 222, the client station 110 examines the sequence ofkeystrokes and mouse actions, and examines its database 114, so as todetect and locate any abbreviations 115 in the entered sequence ofkeystrokes and mouse actions.

For example, a particular abbreviation 115 can comprise the typed word“flower”.

If the client station 110 detects any abbreviations 115, it continueswith the next step. Otherwise, it continues with the flow point 230.

At a step 223, the client station 110 examines the properties of anyassociated ensemble of multimedia objects 116, and determines whetherany such properties affect presentation of any multimedia objects 116associated with the detected abbreviations 115. In particular, theclient station 110 determines if there is a theme associated with anysuch ensemble, and further determines if any such theme affectspresentation of any multimedia objects 116 associated with the detectedabbreviations 115.

For example, if the data object has an associated theme and the theme isa “Western” theme or a “Romantic” theme, the client station 110determines that the theme would affect presentation of a multimediaobject 116 associated with the abbreviation 115 the typed word “flower”(such as to select a picture of a cactus or a rose, respectively).

At a step 224, the client station 110 examines the associations 117 inthe database 114, and replaces the detected abbreviations 115 withassociated multimedia objects 116.

For example, the client station 110 could replace the typed word“flower” with a picture representing a flower.

At a step 225, the client station 110 determines if the associatedmultimedia objects 116 have properties to be determined which affectpresentation or which select among multiple associated multimediaobjects 116 in a hierarchy.

For example, the picture representing a flower can have a property“detail” which distinguishes among a stylized graphic of a flower, arelatively small photographic picture of a flower, a relatively largephotographic picture of a flower, an animation of a flower, and anapplet for emulating a flower.

If the client station 110 detects any properties to be determined, itcontinues with the next step. Otherwise, it continues with the flowpoint 230.

At a step 226, the client station 110 selects values for the propertiesof the multimedia objects 116. In a preferred embodiment, these valuescan be overridden by an operator at the client station 110 or at thedestination client station 110.

Similar to the steps 222 through 226, the sending client station 110 candetect multimedia objects 116 with associated abbreviations 115 andreplace those multimedia objects 116 with their associated abbreviations115 (and associated properties), so as to compress the data object.

At a flow point 230, the data object is ready for transmission from thesending client station 110 to one or more destination client stations110.

At a step 241, the sending client station 110 transmits the data objectto the server station 120 using the network 130 and a known transmissionprotocol.

For example, the server station 120 can comprise an electronic chatserver and the known transmission protocol can comprise an electronicchat transmission protocol. Similarly, the server station 120 cancomprise an electronic mail server and the known transmission protocolcan comprise an electronic mail transmission protocol.

At a step 242, the server station 120 transmits the data object to thedestination client station 110 using the network 130 and the knowntransmission protocol.

In alternative embodiments, the server station 120 may perform stepssimilar to the steps 222 through 226, so as to replace abbreviations 115known to the server station 120 with associated multimedia objects 116,or to replace multimedia objects 116 known to the server station 120with associated abbreviations 115 (and associated properties).

In alternative embodiments, the sending client station 110 may transmitthe data object directly to the destination client station 110 using thenetwork 130 and the known transmission protocol.

At a step 243, the destination client station 110 receives the dataobject and its included multimedia objects 116.

At a step 244, similar to the step 225, the destination client station110 determines if the associated multimedia objects 116 have propertiesto be determined which affect presentation or which select amongmultiple associated multimedia objects 116 in a hierarchy.

If the destination client station 110 detects any properties to bedetermined, it continues with the next step. Otherwise, it continueswith the step 246.

At a step 245, similar to the step 226, the destination client station110 determines if it should override values for the properties of themultimedia objects 116, such as if directed to by an operator at thedestination client station 110.

At a step 246, similar to the step 223, the destination client station110 examines the properties of any associated ensemble of multimediaobjects 116, determines if there is a theme associated with any suchensemble, and further determines if it should override that theme, suchas if directed to by an operator at the destination client station 110.

At a step 247, the destination client station 110 presents the dataobject and its included multimedia objects 116.

At a flow point 250, the data object has been received and presented toan operator at one or more destination client stations 110.

Alternative Embodiments

Although preferred embodiments are disclosed herein, many variations arepossible which remain within the concept, scope, and spirit of theinvention, and these variations would become clear to those skilled inthe art after perusal of this application.

1. A method, comprising the steps of: receiving a set of sequences ofkeystrokes, mouse actions, or keystrokes and mouse actions; detectingwhether a mnemonic name is present in said sequences of keystrokes,mouse actions, or keystrokes and mouse actions, said mnemonic name beingassociated with one of a set of multimedia objects; when said mnemonicname is detected in said set of sequences, replacing said mnemonic namewith said one multimedia object in said set of sequences; and whereinsaid set of multimedia objects are associated with an ensemble, saidensemble having a set of ensemble properties.
 2. A method as in claim 1,wherein said ensemble properties are effective to select among a set ofalternative multimedia objects for each multimedia object in said set ofmultimedia objects.
 3. A method as in claim 1, wherein said ensembleproperties include a theme, said theme being effective to select, foreach multimedia object in said ensemble, one multimedia object from aset of multimedia objects associated with said theme.
 4. A method as inclaim 1, wherein said ensemble properties are editable in response to aset of editing abbreviations.
 5. A method as in claim 4, wherein eachsaid editing abbreviation comprises a relatively short sequence ofkeystrokes or mouse actions.
 6. A method as in claim 1, furthercomprising the steps of: communicating at least one of said ensembleproperties to a recipient with an electronic chat message or anelectronic mail message; and presenting said multimedia object to saidrecipient in accordance with said at least one of said ensembleproperties.
 7. A method as in claim 6, further comprising the step ofconditionally overriding at least one of said ensemble properties inresponse to a capability of said recipient's presentation device,whereby said multimedia object is presented to said recipient inaccordance with a different at least one of said ensemble properties. 8.A method as in claim 6, further comprising the step of conditionallyoverriding at least one of said ensemble properties in response to anaction by said recipient, whereby said multimedia object is presented tosaid recipient in accordance with a different at least one of saidensemble properties.
 9. A method as in claim 8, wherein said actionincludes time taken by said recipient to review the multimedia object.10. A system, comprising: a database having a set of mnemonic names,each associated with at least one corresponding multimedia object; aninput device for a set of sequences of keystrokes, mouse actions, orkeystrokes and mouse actions; a detector capable of detecting at leastone of said mnemonic names in said set of sequences and of replacingsaid mnemonic name with at least one corresponding multimedia object insaid set of sequences; and an associating mechanism capable ofassociating an ensemble with a set of said multimedia objects, saidensemble having a set of ensemble properties; wherein each saidmultimedia object has a set of editable properties.
 11. A system as inclaim 10, wherein said ensemble properties are effective to select amonga set of alternative multimedia objects for each multimedia object insaid set of multimedia objects.
 12. A system as in claim 10, whereinsaid ensemble properties include a theme, said theme being effective toselect, for each multimedia object in said ensemble, one multimediaobject from a set of multimedia objects associated with said theme. 13.A system as in claim 10, wherein said ensemble properties are editablein response to a set of editing abbreviations.
 14. A system as in claim13, wherein each said editing abbreviation comprises a relatively shortsequence of keystrokes or mouse actions.
 15. A system as in claim 10,further comprising: a communicating mechanism capable of sending atleast one of said ensemble properties to a recipient with an electronicchat message or an electronic mail message; and a presentation mechanismcapable of presenting said multimedia objects to said recipient inaccordance with said at least one of said ensemble properties.
 16. Asystem as in claim 15, further comprising a mechanism capable ofconditionally overriding at least one of said ensemble properties inresponse to a capability of said recipient's presentation device,whereby said multimedia objects are presented to said recipient inaccordance with a different at least one of said ensemble properties.17. A system as in claim 15, further comprising a mechanism capable ofconditionally overriding at least one of said ensemble properties inresponse to an action by said recipient, whereby said multimedia objectsare presented to said recipient in accordance with a different at leastone of said ensemble properties.
 18. A system as in claim 17, whereinsaid action comprises time taken by said recipient to review themultimedia objects.